package com.eight.cloud.mybatisplus.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.IService;

import java.io.Serializable;

/**
 * @InterfaceName: IBaseService
 * @Author: TXC
 * @Date: 2024-11-03 17:00
 **/
public interface IBaseService<T> extends IService<T> {
    T getByUuid(Serializable uuid);
    boolean updateByUuid(T entity);
    boolean removeByUuid(Serializable uuid);
    LambdaQueryWrapper<T> lambdaQueryWrapper();
    LambdaUpdateWrapper<T> lambdaUpdateWrapper();
    T convertToEntity(Object source, String... ignoreProperties);
    <E> E convertToObject(T source, Class<E> target, String... ignoreProperties);
}
